import 'package:gameplay_flutter/generated/json/base/json_convert_content.dart';
import 'package:gameplay_flutter/lib_basemodel/discover/comment_entity.dart';

CommentEntity $CommentEntityFromJson(Map<String, dynamic> json) {
  final CommentEntity commentEntity = CommentEntity();
  final int? dynamicId = jsonConvert.convert<int>(json['dynamicId']);
  if (dynamicId != null) {
    commentEntity.dynamicId = dynamicId;
  }
  final int? id = jsonConvert.convert<int>(json['id']);
  if (id != null) {
    commentEntity.id = id;
  }
  final int? fromUserGender = jsonConvert.convert<int>(json['fromUserGender']);
  if (fromUserGender != null) {
    commentEntity.fromUserGender = fromUserGender;
  }
  final dynamic toContent = json['toContent'];
  if (toContent != null) {
    commentEntity.toContent = toContent;
  }
  final List<CommentContentInfoList>? contentInfoList = (json['contentInfoList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<CommentContentInfoList>(e) as CommentContentInfoList).toList();
  if (contentInfoList != null) {
    commentEntity.contentInfoList = contentInfoList;
  }
  final dynamic contentRiskResult = json['contentRiskResult'];
  if (contentRiskResult != null) {
    commentEntity.contentRiskResult = contentRiskResult;
  }
  final String? atIndex = jsonConvert.convert<String>(json['atIndex']);
  if (atIndex != null) {
    commentEntity.atIndex = atIndex;
  }
  final int? comments = jsonConvert.convert<int>(json['comments']);
  if (comments != null) {
    commentEntity.comments = comments;
  }
  final int? appType = jsonConvert.convert<int>(json['appType']);
  if (appType != null) {
    commentEntity.appType = appType;
  }
  final String? description = jsonConvert.convert<String>(json['description']);
  if (description != null) {
    commentEntity.description = description;
  }
  final int? commentUsers = jsonConvert.convert<int>(json['commentUsers']);
  if (commentUsers != null) {
    commentEntity.commentUsers = commentUsers;
  }
  final dynamic toMicFrameUrl = json['toMicFrameUrl'];
  if (toMicFrameUrl != null) {
    commentEntity.toMicFrameUrl = toMicFrameUrl;
  }
  final dynamic toUserId = json['toUserId'];
  if (toUserId != null) {
    commentEntity.toUserId = toUserId;
  }
  final dynamic toUserHeadUrl = json['toUserHeadUrl'];
  if (toUserHeadUrl != null) {
    commentEntity.toUserHeadUrl = toUserHeadUrl;
  }
  final String? hotReplyInfo = jsonConvert.convert<String>(json['hotReplyInfo']);
  if (hotReplyInfo != null) {
    commentEntity.hotReplyInfo = hotReplyInfo;
  }
  final bool? delFlag = jsonConvert.convert<bool>(json['delFlag']);
  if (delFlag != null) {
    commentEntity.delFlag = delFlag;
  }
  final int? memberLevel = jsonConvert.convert<int>(json['memberLevel']);
  if (memberLevel != null) {
    commentEntity.memberLevel = memberLevel;
  }
  final dynamic userRemark = json['userRemark'];
  if (userRemark != null) {
    commentEntity.userRemark = userRemark;
  }
  final dynamic fromMicFrameUrl = json['fromMicFrameUrl'];
  if (fromMicFrameUrl != null) {
    commentEntity.fromMicFrameUrl = fromMicFrameUrl;
  }
  final dynamic updateTime = json['updateTime'];
  if (updateTime != null) {
    commentEntity.updateTime = updateTime;
  }
  final int? likes = jsonConvert.convert<int>(json['likes']);
  if (likes != null) {
    commentEntity.likes = likes;
  }
  final bool? isLikes = jsonConvert.convert<bool>(json['isLikes']);
  if (isLikes != null) {
    commentEntity.isLikes = isLikes;
  }
  final int? fromUserId = jsonConvert.convert<int>(json['fromUserId']);
  if (fromUserId != null) {
    commentEntity.fromUserId = fromUserId;
  }
  final dynamic toUserGender = json['toUserGender'];
  if (toUserGender != null) {
    commentEntity.toUserGender = toUserGender;
  }
  final List<CommentEntity>? replyList = (json['replyList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<CommentEntity>(e) as CommentEntity).toList();
  if (replyList != null) {
    commentEntity.replyList = replyList;
  }
  final bool? toCommentDel = jsonConvert.convert<bool>(json['toCommentDel']);
  if (toCommentDel != null) {
    commentEntity.toCommentDel = toCommentDel;
  }
  final int? riskType = jsonConvert.convert<int>(json['riskType']);
  if (riskType != null) {
    commentEntity.riskType = riskType;
  }
  final bool? showMode = jsonConvert.convert<bool>(json['showMode']);
  if (showMode != null) {
    commentEntity.showMode = showMode;
  }
  final dynamic auditStatus = json['auditStatus'];
  if (auditStatus != null) {
    commentEntity.auditStatus = auditStatus;
  }
  final dynamic memberEmblem = json['memberEmblem'];
  if (memberEmblem != null) {
    commentEntity.memberEmblem = memberEmblem;
  }
  final dynamic toUserHeadFrameUrl = json['toUserHeadFrameUrl'];
  if (toUserHeadFrameUrl != null) {
    commentEntity.toUserHeadFrameUrl = toUserHeadFrameUrl;
  }
  final String? timeStr = jsonConvert.convert<String>(json['timeStr']);
  if (timeStr != null) {
    commentEntity.timeStr = timeStr;
  }
  final String? content = jsonConvert.convert<String>(json['content']);
  if (content != null) {
    commentEntity.content = content;
  }
  final int? visible = jsonConvert.convert<int>(json['visible']);
  if (visible != null) {
    commentEntity.visible = visible;
  }
  final String? fromUserHeadUrl = jsonConvert.convert<String>(json['fromUserHeadUrl']);
  if (fromUserHeadUrl != null) {
    commentEntity.fromUserHeadUrl = fromUserHeadUrl;
  }
  final dynamic yundunResult = json['yundunResult'];
  if (yundunResult != null) {
    commentEntity.yundunResult = yundunResult;
  }
  final dynamic adminId = json['adminId'];
  if (adminId != null) {
    commentEntity.adminId = adminId;
  }
  final dynamic adminName = json['adminName'];
  if (adminName != null) {
    commentEntity.adminName = adminName;
  }
  final String? createTime = jsonConvert.convert<String>(json['createTime']);
  if (createTime != null) {
    commentEntity.createTime = createTime;
  }
  final int? superCommentId = jsonConvert.convert<int>(json['superCommentId']);
  if (superCommentId != null) {
    commentEntity.superCommentId = superCommentId;
  }
  final int? weightScore = jsonConvert.convert<int>(json['weightScore']);
  if (weightScore != null) {
    commentEntity.weightScore = weightScore;
  }
  final bool? handleFlag = jsonConvert.convert<bool>(json['handleFlag']);
  if (handleFlag != null) {
    commentEntity.handleFlag = handleFlag;
  }
  final dynamic age = json['age'];
  if (age != null) {
    commentEntity.age = age;
  }
  final int? commentId = jsonConvert.convert<int>(json['commentId']);
  if (commentId != null) {
    commentEntity.commentId = commentId;
  }
  final dynamic fromUserMemberExp = json['fromUserMemberExp'];
  if (fromUserMemberExp != null) {
    commentEntity.fromUserMemberExp = fromUserMemberExp;
  }
  final int? isLike = jsonConvert.convert<int>(json['isLike']);
  if (isLike != null) {
    commentEntity.isLike = isLike;
  }
  final int? isReply = jsonConvert.convert<int>(json['isReply']);
  if (isReply != null) {
    commentEntity.isReply = isReply;
  }
  final int? replys = jsonConvert.convert<int>(json['replys']);
  if (replys != null) {
    commentEntity.replys = replys;
  }
  final String? fromUserNickname = jsonConvert.convert<String>(json['fromUserNickname']);
  if (fromUserNickname != null) {
    commentEntity.fromUserNickname = fromUserNickname;
  }
  final int? commentType = jsonConvert.convert<int>(json['commentType']);
  if (commentType != null) {
    commentEntity.commentType = commentType;
  }
  final dynamic toUserNickname = json['toUserNickname'];
  if (toUserNickname != null) {
    commentEntity.toUserNickname = toUserNickname;
  }
  final dynamic fromUserHeadFrameUrl = json['fromUserHeadFrameUrl'];
  if (fromUserHeadFrameUrl != null) {
    commentEntity.fromUserHeadFrameUrl = fromUserHeadFrameUrl;
  }
  return commentEntity;
}

Map<String, dynamic> $CommentEntityToJson(CommentEntity entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['dynamicId'] = entity.dynamicId;
  data['id'] = entity.id;
  data['fromUserGender'] = entity.fromUserGender;
  data['toContent'] = entity.toContent;
  data['contentInfoList'] = entity.contentInfoList.map((v) => v.toJson()).toList();
  data['contentRiskResult'] = entity.contentRiskResult;
  data['atIndex'] = entity.atIndex;
  data['comments'] = entity.comments;
  data['appType'] = entity.appType;
  data['description'] = entity.description;
  data['commentUsers'] = entity.commentUsers;
  data['toMicFrameUrl'] = entity.toMicFrameUrl;
  data['toUserId'] = entity.toUserId;
  data['toUserHeadUrl'] = entity.toUserHeadUrl;
  data['hotReplyInfo'] = entity.hotReplyInfo;
  data['delFlag'] = entity.delFlag;
  data['memberLevel'] = entity.memberLevel;
  data['userRemark'] = entity.userRemark;
  data['fromMicFrameUrl'] = entity.fromMicFrameUrl;
  data['updateTime'] = entity.updateTime;
  data['likes'] = entity.likes;
  data['isLikes'] = entity.isLikes;
  data['fromUserId'] = entity.fromUserId;
  data['toUserGender'] = entity.toUserGender;
  data['replyList'] = entity.replyList.map((v) => v.toJson()).toList();
  data['toCommentDel'] = entity.toCommentDel;
  data['riskType'] = entity.riskType;
  data['showMode'] = entity.showMode;
  data['auditStatus'] = entity.auditStatus;
  data['memberEmblem'] = entity.memberEmblem;
  data['toUserHeadFrameUrl'] = entity.toUserHeadFrameUrl;
  data['timeStr'] = entity.timeStr;
  data['content'] = entity.content;
  data['visible'] = entity.visible;
  data['fromUserHeadUrl'] = entity.fromUserHeadUrl;
  data['yundunResult'] = entity.yundunResult;
  data['adminId'] = entity.adminId;
  data['adminName'] = entity.adminName;
  data['createTime'] = entity.createTime;
  data['superCommentId'] = entity.superCommentId;
  data['weightScore'] = entity.weightScore;
  data['handleFlag'] = entity.handleFlag;
  data['age'] = entity.age;
  data['commentId'] = entity.commentId;
  data['fromUserMemberExp'] = entity.fromUserMemberExp;
  data['isLike'] = entity.isLike;
  data['isReply'] = entity.isReply;
  data['replys'] = entity.replys;
  data['fromUserNickname'] = entity.fromUserNickname;
  data['commentType'] = entity.commentType;
  data['toUserNickname'] = entity.toUserNickname;
  data['fromUserHeadFrameUrl'] = entity.fromUserHeadFrameUrl;
  return data;
}

extension CommentEntityExtension on CommentEntity {
  CommentEntity copyWith({
    int? dynamicId,
    int? id,
    int? fromUserGender,
    dynamic toContent,
    List<CommentContentInfoList>? contentInfoList,
    dynamic contentRiskResult,
    String? atIndex,
    int? comments,
    int? appType,
    String? description,
    int? commentUsers,
    dynamic toMicFrameUrl,
    dynamic toUserId,
    dynamic toUserHeadUrl,
    String? hotReplyInfo,
    bool? delFlag,
    int? memberLevel,
    dynamic userRemark,
    dynamic fromMicFrameUrl,
    dynamic updateTime,
    int? likes,
    bool? isLikes,
    int? fromUserId,
    dynamic toUserGender,
    List<CommentEntity>? replyList,
    bool? toCommentDel,
    int? riskType,
    bool? showMode,
    dynamic auditStatus,
    dynamic memberEmblem,
    dynamic toUserHeadFrameUrl,
    String? timeStr,
    String? content,
    int? visible,
    String? fromUserHeadUrl,
    dynamic yundunResult,
    dynamic adminId,
    dynamic adminName,
    String? createTime,
    int? superCommentId,
    int? weightScore,
    bool? handleFlag,
    dynamic age,
    int? commentId,
    dynamic fromUserMemberExp,
    int? isLike,
    int? isReply,
    int? replys,
    String? fromUserNickname,
    int? commentType,
    dynamic toUserNickname,
    dynamic fromUserHeadFrameUrl,
  }) {
    return CommentEntity()
      ..dynamicId = dynamicId ?? this.dynamicId
      ..id = id ?? this.id
      ..fromUserGender = fromUserGender ?? this.fromUserGender
      ..toContent = toContent ?? this.toContent
      ..contentInfoList = contentInfoList ?? this.contentInfoList
      ..contentRiskResult = contentRiskResult ?? this.contentRiskResult
      ..atIndex = atIndex ?? this.atIndex
      ..comments = comments ?? this.comments
      ..appType = appType ?? this.appType
      ..description = description ?? this.description
      ..commentUsers = commentUsers ?? this.commentUsers
      ..toMicFrameUrl = toMicFrameUrl ?? this.toMicFrameUrl
      ..toUserId = toUserId ?? this.toUserId
      ..toUserHeadUrl = toUserHeadUrl ?? this.toUserHeadUrl
      ..hotReplyInfo = hotReplyInfo ?? this.hotReplyInfo
      ..delFlag = delFlag ?? this.delFlag
      ..memberLevel = memberLevel ?? this.memberLevel
      ..userRemark = userRemark ?? this.userRemark
      ..fromMicFrameUrl = fromMicFrameUrl ?? this.fromMicFrameUrl
      ..updateTime = updateTime ?? this.updateTime
      ..likes = likes ?? this.likes
      ..isLikes = isLikes ?? this.isLikes
      ..fromUserId = fromUserId ?? this.fromUserId
      ..toUserGender = toUserGender ?? this.toUserGender
      ..replyList = replyList ?? this.replyList
      ..toCommentDel = toCommentDel ?? this.toCommentDel
      ..riskType = riskType ?? this.riskType
      ..showMode = showMode ?? this.showMode
      ..auditStatus = auditStatus ?? this.auditStatus
      ..memberEmblem = memberEmblem ?? this.memberEmblem
      ..toUserHeadFrameUrl = toUserHeadFrameUrl ?? this.toUserHeadFrameUrl
      ..timeStr = timeStr ?? this.timeStr
      ..content = content ?? this.content
      ..visible = visible ?? this.visible
      ..fromUserHeadUrl = fromUserHeadUrl ?? this.fromUserHeadUrl
      ..yundunResult = yundunResult ?? this.yundunResult
      ..adminId = adminId ?? this.adminId
      ..adminName = adminName ?? this.adminName
      ..createTime = createTime ?? this.createTime
      ..superCommentId = superCommentId ?? this.superCommentId
      ..weightScore = weightScore ?? this.weightScore
      ..handleFlag = handleFlag ?? this.handleFlag
      ..age = age ?? this.age
      ..commentId = commentId ?? this.commentId
      ..fromUserMemberExp = fromUserMemberExp ?? this.fromUserMemberExp
      ..isLike = isLike ?? this.isLike
      ..isReply = isReply ?? this.isReply
      ..replys = replys ?? this.replys
      ..fromUserNickname = fromUserNickname ?? this.fromUserNickname
      ..commentType = commentType ?? this.commentType
      ..toUserNickname = toUserNickname ?? this.toUserNickname
      ..fromUserHeadFrameUrl = fromUserHeadFrameUrl ?? this.fromUserHeadFrameUrl;
  }
}

CommentContentInfoList $CommentContentInfoListFromJson(Map<String, dynamic> json) {
  final CommentContentInfoList commentContentInfoList = CommentContentInfoList();
  final dynamic imId = json['imId'];
  if (imId != null) {
    commentContentInfoList.imId = imId;
  }
  final dynamic userStatus = json['userStatus'];
  if (userStatus != null) {
    commentContentInfoList.userStatus = userStatus;
  }
  final dynamic nickname = json['nickname'];
  if (nickname != null) {
    commentContentInfoList.nickname = nickname;
  }
  final int? type = jsonConvert.convert<int>(json['type']);
  if (type != null) {
    commentContentInfoList.type = type;
  }
  final dynamic userId = json['userId'];
  if (userId != null) {
    commentContentInfoList.userId = userId;
  }
  final String? text = jsonConvert.convert<String>(json['text']);
  if (text != null) {
    commentContentInfoList.text = text;
  }
  return commentContentInfoList;
}

Map<String, dynamic> $CommentContentInfoListToJson(CommentContentInfoList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['imId'] = entity.imId;
  data['userStatus'] = entity.userStatus;
  data['nickname'] = entity.nickname;
  data['type'] = entity.type;
  data['userId'] = entity.userId;
  data['text'] = entity.text;
  return data;
}

extension CommentContentInfoListExtension on CommentContentInfoList {
  CommentContentInfoList copyWith({
    dynamic imId,
    dynamic userStatus,
    dynamic nickname,
    int? type,
    dynamic userId,
    String? text,
  }) {
    return CommentContentInfoList()
      ..imId = imId ?? this.imId
      ..userStatus = userStatus ?? this.userStatus
      ..nickname = nickname ?? this.nickname
      ..type = type ?? this.type
      ..userId = userId ?? this.userId
      ..text = text ?? this.text;
  }
}

CommentReplyList $CommentReplyListFromJson(Map<String, dynamic> json) {
  final CommentReplyList commentReplyList = CommentReplyList();
  final int? dynamicId = jsonConvert.convert<int>(json['dynamicId']);
  if (dynamicId != null) {
    commentReplyList.dynamicId = dynamicId;
  }
  final int? id = jsonConvert.convert<int>(json['id']);
  if (id != null) {
    commentReplyList.id = id;
  }
  final int? fromUserGender = jsonConvert.convert<int>(json['fromUserGender']);
  if (fromUserGender != null) {
    commentReplyList.fromUserGender = fromUserGender;
  }
  final String? toContent = jsonConvert.convert<String>(json['toContent']);
  if (toContent != null) {
    commentReplyList.toContent = toContent;
  }
  final List<CommentReplyListContentInfoList>? contentInfoList = (json['contentInfoList'] as List<dynamic>?)?.map(
          (e) => jsonConvert.convert<CommentReplyListContentInfoList>(e) as CommentReplyListContentInfoList).toList();
  if (contentInfoList != null) {
    commentReplyList.contentInfoList = contentInfoList;
  }
  final dynamic contentRiskResult = json['contentRiskResult'];
  if (contentRiskResult != null) {
    commentReplyList.contentRiskResult = contentRiskResult;
  }
  final String? atIndex = jsonConvert.convert<String>(json['atIndex']);
  if (atIndex != null) {
    commentReplyList.atIndex = atIndex;
  }
  final int? comments = jsonConvert.convert<int>(json['comments']);
  if (comments != null) {
    commentReplyList.comments = comments;
  }
  final int? appType = jsonConvert.convert<int>(json['appType']);
  if (appType != null) {
    commentReplyList.appType = appType;
  }
  final String? description = jsonConvert.convert<String>(json['description']);
  if (description != null) {
    commentReplyList.description = description;
  }
  final int? commentUsers = jsonConvert.convert<int>(json['commentUsers']);
  if (commentUsers != null) {
    commentReplyList.commentUsers = commentUsers;
  }
  final dynamic toMicFrameUrl = json['toMicFrameUrl'];
  if (toMicFrameUrl != null) {
    commentReplyList.toMicFrameUrl = toMicFrameUrl;
  }
  final int? toUserId = jsonConvert.convert<int>(json['toUserId']);
  if (toUserId != null) {
    commentReplyList.toUserId = toUserId;
  }
  final dynamic toUserHeadUrl = json['toUserHeadUrl'];
  if (toUserHeadUrl != null) {
    commentReplyList.toUserHeadUrl = toUserHeadUrl;
  }
  final String? hotReplyInfo = jsonConvert.convert<String>(json['hotReplyInfo']);
  if (hotReplyInfo != null) {
    commentReplyList.hotReplyInfo = hotReplyInfo;
  }
  final bool? delFlag = jsonConvert.convert<bool>(json['delFlag']);
  if (delFlag != null) {
    commentReplyList.delFlag = delFlag;
  }
  final int? memberLevel = jsonConvert.convert<int>(json['memberLevel']);
  if (memberLevel != null) {
    commentReplyList.memberLevel = memberLevel;
  }
  final dynamic userRemark = json['userRemark'];
  if (userRemark != null) {
    commentReplyList.userRemark = userRemark;
  }
  final dynamic fromMicFrameUrl = json['fromMicFrameUrl'];
  if (fromMicFrameUrl != null) {
    commentReplyList.fromMicFrameUrl = fromMicFrameUrl;
  }
  final dynamic updateTime = json['updateTime'];
  if (updateTime != null) {
    commentReplyList.updateTime = updateTime;
  }
  final int? likes = jsonConvert.convert<int>(json['likes']);
  if (likes != null) {
    commentReplyList.likes = likes;
  }
  final int? fromUserId = jsonConvert.convert<int>(json['fromUserId']);
  if (fromUserId != null) {
    commentReplyList.fromUserId = fromUserId;
  }
  final dynamic toUserGender = json['toUserGender'];
  if (toUserGender != null) {
    commentReplyList.toUserGender = toUserGender;
  }
  final dynamic replyList = json['replyList'];
  if (replyList != null) {
    commentReplyList.replyList = replyList;
  }
  final bool? toCommentDel = jsonConvert.convert<bool>(json['toCommentDel']);
  if (toCommentDel != null) {
    commentReplyList.toCommentDel = toCommentDel;
  }
  final int? riskType = jsonConvert.convert<int>(json['riskType']);
  if (riskType != null) {
    commentReplyList.riskType = riskType;
  }
  final dynamic auditStatus = json['auditStatus'];
  if (auditStatus != null) {
    commentReplyList.auditStatus = auditStatus;
  }
  final dynamic memberEmblem = json['memberEmblem'];
  if (memberEmblem != null) {
    commentReplyList.memberEmblem = memberEmblem;
  }
  final dynamic toUserHeadFrameUrl = json['toUserHeadFrameUrl'];
  if (toUserHeadFrameUrl != null) {
    commentReplyList.toUserHeadFrameUrl = toUserHeadFrameUrl;
  }
  final String? timeStr = jsonConvert.convert<String>(json['timeStr']);
  if (timeStr != null) {
    commentReplyList.timeStr = timeStr;
  }
  final String? content = jsonConvert.convert<String>(json['content']);
  if (content != null) {
    commentReplyList.content = content;
  }
  final int? visible = jsonConvert.convert<int>(json['visible']);
  if (visible != null) {
    commentReplyList.visible = visible;
  }
  final String? fromUserHeadUrl = jsonConvert.convert<String>(json['fromUserHeadUrl']);
  if (fromUserHeadUrl != null) {
    commentReplyList.fromUserHeadUrl = fromUserHeadUrl;
  }
  final dynamic yundunResult = json['yundunResult'];
  if (yundunResult != null) {
    commentReplyList.yundunResult = yundunResult;
  }
  final dynamic adminId = json['adminId'];
  if (adminId != null) {
    commentReplyList.adminId = adminId;
  }
  final dynamic adminName = json['adminName'];
  if (adminName != null) {
    commentReplyList.adminName = adminName;
  }
  final String? createTime = jsonConvert.convert<String>(json['createTime']);
  if (createTime != null) {
    commentReplyList.createTime = createTime;
  }
  final int? superCommentId = jsonConvert.convert<int>(json['superCommentId']);
  if (superCommentId != null) {
    commentReplyList.superCommentId = superCommentId;
  }
  final int? weightScore = jsonConvert.convert<int>(json['weightScore']);
  if (weightScore != null) {
    commentReplyList.weightScore = weightScore;
  }
  final bool? handleFlag = jsonConvert.convert<bool>(json['handleFlag']);
  if (handleFlag != null) {
    commentReplyList.handleFlag = handleFlag;
  }
  final dynamic age = json['age'];
  if (age != null) {
    commentReplyList.age = age;
  }
  final int? commentId = jsonConvert.convert<int>(json['commentId']);
  if (commentId != null) {
    commentReplyList.commentId = commentId;
  }
  final dynamic fromUserMemberExp = json['fromUserMemberExp'];
  if (fromUserMemberExp != null) {
    commentReplyList.fromUserMemberExp = fromUserMemberExp;
  }
  final int? isLike = jsonConvert.convert<int>(json['isLike']);
  if (isLike != null) {
    commentReplyList.isLike = isLike;
  }
  final int? isReply = jsonConvert.convert<int>(json['isReply']);
  if (isReply != null) {
    commentReplyList.isReply = isReply;
  }
  final dynamic replys = json['replys'];
  if (replys != null) {
    commentReplyList.replys = replys;
  }
  final String? fromUserNickname = jsonConvert.convert<String>(json['fromUserNickname']);
  if (fromUserNickname != null) {
    commentReplyList.fromUserNickname = fromUserNickname;
  }
  final int? commentType = jsonConvert.convert<int>(json['commentType']);
  if (commentType != null) {
    commentReplyList.commentType = commentType;
  }
  final dynamic toUserNickname = json['toUserNickname'];
  if (toUserNickname != null) {
    commentReplyList.toUserNickname = toUserNickname;
  }
  final dynamic fromUserHeadFrameUrl = json['fromUserHeadFrameUrl'];
  if (fromUserHeadFrameUrl != null) {
    commentReplyList.fromUserHeadFrameUrl = fromUserHeadFrameUrl;
  }
  return commentReplyList;
}

Map<String, dynamic> $CommentReplyListToJson(CommentReplyList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['dynamicId'] = entity.dynamicId;
  data['id'] = entity.id;
  data['fromUserGender'] = entity.fromUserGender;
  data['toContent'] = entity.toContent;
  data['contentInfoList'] = entity.contentInfoList.map((v) => v.toJson()).toList();
  data['contentRiskResult'] = entity.contentRiskResult;
  data['atIndex'] = entity.atIndex;
  data['comments'] = entity.comments;
  data['appType'] = entity.appType;
  data['description'] = entity.description;
  data['commentUsers'] = entity.commentUsers;
  data['toMicFrameUrl'] = entity.toMicFrameUrl;
  data['toUserId'] = entity.toUserId;
  data['toUserHeadUrl'] = entity.toUserHeadUrl;
  data['hotReplyInfo'] = entity.hotReplyInfo;
  data['delFlag'] = entity.delFlag;
  data['memberLevel'] = entity.memberLevel;
  data['userRemark'] = entity.userRemark;
  data['fromMicFrameUrl'] = entity.fromMicFrameUrl;
  data['updateTime'] = entity.updateTime;
  data['likes'] = entity.likes;
  data['fromUserId'] = entity.fromUserId;
  data['toUserGender'] = entity.toUserGender;
  data['replyList'] = entity.replyList;
  data['toCommentDel'] = entity.toCommentDel;
  data['riskType'] = entity.riskType;
  data['auditStatus'] = entity.auditStatus;
  data['memberEmblem'] = entity.memberEmblem;
  data['toUserHeadFrameUrl'] = entity.toUserHeadFrameUrl;
  data['timeStr'] = entity.timeStr;
  data['content'] = entity.content;
  data['visible'] = entity.visible;
  data['fromUserHeadUrl'] = entity.fromUserHeadUrl;
  data['yundunResult'] = entity.yundunResult;
  data['adminId'] = entity.adminId;
  data['adminName'] = entity.adminName;
  data['createTime'] = entity.createTime;
  data['superCommentId'] = entity.superCommentId;
  data['weightScore'] = entity.weightScore;
  data['handleFlag'] = entity.handleFlag;
  data['age'] = entity.age;
  data['commentId'] = entity.commentId;
  data['fromUserMemberExp'] = entity.fromUserMemberExp;
  data['isLike'] = entity.isLike;
  data['isReply'] = entity.isReply;
  data['replys'] = entity.replys;
  data['fromUserNickname'] = entity.fromUserNickname;
  data['commentType'] = entity.commentType;
  data['toUserNickname'] = entity.toUserNickname;
  data['fromUserHeadFrameUrl'] = entity.fromUserHeadFrameUrl;
  return data;
}

extension CommentReplyListExtension on CommentReplyList {
  CommentReplyList copyWith({
    int? dynamicId,
    int? id,
    int? fromUserGender,
    String? toContent,
    List<CommentReplyListContentInfoList>? contentInfoList,
    dynamic contentRiskResult,
    String? atIndex,
    int? comments,
    int? appType,
    String? description,
    int? commentUsers,
    dynamic toMicFrameUrl,
    int? toUserId,
    dynamic toUserHeadUrl,
    String? hotReplyInfo,
    bool? delFlag,
    int? memberLevel,
    dynamic userRemark,
    dynamic fromMicFrameUrl,
    dynamic updateTime,
    int? likes,
    int? fromUserId,
    dynamic toUserGender,
    dynamic replyList,
    bool? toCommentDel,
    int? riskType,
    dynamic auditStatus,
    dynamic memberEmblem,
    dynamic toUserHeadFrameUrl,
    String? timeStr,
    String? content,
    int? visible,
    String? fromUserHeadUrl,
    dynamic yundunResult,
    dynamic adminId,
    dynamic adminName,
    String? createTime,
    int? superCommentId,
    int? weightScore,
    bool? handleFlag,
    dynamic age,
    int? commentId,
    dynamic fromUserMemberExp,
    int? isLike,
    int? isReply,
    dynamic replys,
    String? fromUserNickname,
    int? commentType,
    dynamic toUserNickname,
    dynamic fromUserHeadFrameUrl,
  }) {
    return CommentReplyList()
      ..dynamicId = dynamicId ?? this.dynamicId
      ..id = id ?? this.id
      ..fromUserGender = fromUserGender ?? this.fromUserGender
      ..toContent = toContent ?? this.toContent
      ..contentInfoList = contentInfoList ?? this.contentInfoList
      ..contentRiskResult = contentRiskResult ?? this.contentRiskResult
      ..atIndex = atIndex ?? this.atIndex
      ..comments = comments ?? this.comments
      ..appType = appType ?? this.appType
      ..description = description ?? this.description
      ..commentUsers = commentUsers ?? this.commentUsers
      ..toMicFrameUrl = toMicFrameUrl ?? this.toMicFrameUrl
      ..toUserId = toUserId ?? this.toUserId
      ..toUserHeadUrl = toUserHeadUrl ?? this.toUserHeadUrl
      ..hotReplyInfo = hotReplyInfo ?? this.hotReplyInfo
      ..delFlag = delFlag ?? this.delFlag
      ..memberLevel = memberLevel ?? this.memberLevel
      ..userRemark = userRemark ?? this.userRemark
      ..fromMicFrameUrl = fromMicFrameUrl ?? this.fromMicFrameUrl
      ..updateTime = updateTime ?? this.updateTime
      ..likes = likes ?? this.likes
      ..fromUserId = fromUserId ?? this.fromUserId
      ..toUserGender = toUserGender ?? this.toUserGender
      ..replyList = replyList ?? this.replyList
      ..toCommentDel = toCommentDel ?? this.toCommentDel
      ..riskType = riskType ?? this.riskType
      ..auditStatus = auditStatus ?? this.auditStatus
      ..memberEmblem = memberEmblem ?? this.memberEmblem
      ..toUserHeadFrameUrl = toUserHeadFrameUrl ?? this.toUserHeadFrameUrl
      ..timeStr = timeStr ?? this.timeStr
      ..content = content ?? this.content
      ..visible = visible ?? this.visible
      ..fromUserHeadUrl = fromUserHeadUrl ?? this.fromUserHeadUrl
      ..yundunResult = yundunResult ?? this.yundunResult
      ..adminId = adminId ?? this.adminId
      ..adminName = adminName ?? this.adminName
      ..createTime = createTime ?? this.createTime
      ..superCommentId = superCommentId ?? this.superCommentId
      ..weightScore = weightScore ?? this.weightScore
      ..handleFlag = handleFlag ?? this.handleFlag
      ..age = age ?? this.age
      ..commentId = commentId ?? this.commentId
      ..fromUserMemberExp = fromUserMemberExp ?? this.fromUserMemberExp
      ..isLike = isLike ?? this.isLike
      ..isReply = isReply ?? this.isReply
      ..replys = replys ?? this.replys
      ..fromUserNickname = fromUserNickname ?? this.fromUserNickname
      ..commentType = commentType ?? this.commentType
      ..toUserNickname = toUserNickname ?? this.toUserNickname
      ..fromUserHeadFrameUrl = fromUserHeadFrameUrl ?? this.fromUserHeadFrameUrl;
  }
}

CommentReplyListContentInfoList $CommentReplyListContentInfoListFromJson(Map<String, dynamic> json) {
  final CommentReplyListContentInfoList commentReplyListContentInfoList = CommentReplyListContentInfoList();
  final dynamic imId = json['imId'];
  if (imId != null) {
    commentReplyListContentInfoList.imId = imId;
  }
  final dynamic userStatus = json['userStatus'];
  if (userStatus != null) {
    commentReplyListContentInfoList.userStatus = userStatus;
  }
  final dynamic nickname = json['nickname'];
  if (nickname != null) {
    commentReplyListContentInfoList.nickname = nickname;
  }
  final int? type = jsonConvert.convert<int>(json['type']);
  if (type != null) {
    commentReplyListContentInfoList.type = type;
  }
  final dynamic userId = json['userId'];
  if (userId != null) {
    commentReplyListContentInfoList.userId = userId;
  }
  final String? text = jsonConvert.convert<String>(json['text']);
  if (text != null) {
    commentReplyListContentInfoList.text = text;
  }
  return commentReplyListContentInfoList;
}

Map<String, dynamic> $CommentReplyListContentInfoListToJson(CommentReplyListContentInfoList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['imId'] = entity.imId;
  data['userStatus'] = entity.userStatus;
  data['nickname'] = entity.nickname;
  data['type'] = entity.type;
  data['userId'] = entity.userId;
  data['text'] = entity.text;
  return data;
}

extension CommentReplyListContentInfoListExtension on CommentReplyListContentInfoList {
  CommentReplyListContentInfoList copyWith({
    dynamic imId,
    dynamic userStatus,
    dynamic nickname,
    int? type,
    dynamic userId,
    String? text,
  }) {
    return CommentReplyListContentInfoList()
      ..imId = imId ?? this.imId
      ..userStatus = userStatus ?? this.userStatus
      ..nickname = nickname ?? this.nickname
      ..type = type ?? this.type
      ..userId = userId ?? this.userId
      ..text = text ?? this.text;
  }
}